Web search is a critical function used by users of the World-Wide Web (“the web”). The web is a system of interconnected documents accessible via the internet. Web documents (“pages”) may contain text, images, video and/or sound recordings that can be accessed via hyperlinks using a web browser. Programs that provide search functionality are generally referred to as web search engines. When presented with a query in the form of a text string, typically including a number of words and/or phrases delimited by quotation marks, such a search engine identifies linked items (such as web pages, documents and images) that it determines best match the user's query. The engine generally ranks the identified items based on relevance to the query, which ranking may take into account many things, such as the perceived value of the item based on the number and characteristics of third parties that link to that item, for example. Then the results are displayed in order of the ranking, for example 10 results per screen.
In some cases, a small number of large and popular sites may dominate the search results because they contain a lot of relevant information, although it may not be the kind of information that a user wishes to see. Also, because of the potential commercial value of being shown near the top of such searches, many websites employ search engine optimization techniques that enhance their ranking by major search engines. The result of this can be that a given search may result in most of the top-ranked search results coming from a few well-known sites, and often many of these results are similar, providing little additional value beyond a first hit on such a site. Often, even the first hit amounts to little more than an advertisement that provides no useful information to the searcher.
Searches can return thousands, and often of millions, of hits in response to a search query, but users typically look at only the first page or two of such results. Such pages may be completely populated by large/popular sites and search-optimized sites, and not include many or any sites that have the type of information that the user is actually trying to find, or may be interested in. Often, there may be information that a searcher would be very interested in, for example from an individual blogger's site that is not particularly popular, but it may be far down in the list of search results and the user is very unlikely to click though hundreds or thousands of pages of search results in order that such results may be displayed.
Generally search engines allow a user to exclude particular sites from the results of a search by naming the sites to be excluded. For example, “-site:domain1.com-site:domain2.com” may be included in the search string to remove results from domain1.com and domain2.com. However, this is inconvenient because it requires the user to predetermine the websites to exclude by name, and type them into the query without typographical errors. While this may be effective for a very small number of sites, it is impractical to use to exclude larger numbers of websites, and it fundamentally requires that the user know the names or URLs of websites that the user wants to exclude. Often the user will not know this until presented with a list of results.